package com.jshoperxms.service;


import java.util.List;

import com.jshoperxms.entity.*;


/**
 * 订单生成过程需要调用的方法
 * @author sdywcd
 *
 */
public interface OrderBaseProcessTService {
	/**
	 * 根据会员id获取所有收货地址
	 * @param m
	 * @return
	 */
	List<MemberDeliverAddressT> findMemberDeliverAddressByMemberid(MemberT m);
	
	/**
	 * 获取当前前台用户可用的物流商信息
	 * @param usingway
	 * @return
	 */
	List<LogisticsBusinessT>findLogisticstsBusiness(String usingway);
	/**
	 * 获取当前可用的支付方式
	 * @return
	 */
	List<PaymentT>findPayment();
	/**
	 * 获取当前用的购物车信息
	 * @param memberid
	 * @param status 记录状态
	 * @param cartstatus 购物车中的货物状态
	 * @param orderTag
	 * @return
	 */
	List<MemberCartT>findMemberCart(String memberid,String status,String cartstatus,String orderTag);
	/**
	 * 获取当前选择的支付信息
	 * @param paymentid
	 * @return
	 */
	PaymentT getSelectedPayMent(String paymentid);
	/**
	 * 获取收货地址信息
	 * @param addressid
	 * @return
	 */
	MemberDeliverAddressT getDeliverAddress(String addressid);
	/**
	 * 获取订单信息
	 * @param orderid
	 * @return
	 */
	OrderT getOrder(String orderid);
	/**
	 * 根据收货地址id查询是否有对应的发货地址信息
	 * @param deliveraddressid
	 * @param status
	 * @param orderid
	 * @return
	 */
	OrderShippingAddressT getShippingAddress(String deliveraddressid,String status,String orderid);
	/**
	 * 根据订单获取发货地址
	 * @param orderid
	 * @return
	 */
	List<OrderShippingAddressT>getShippingAddress(String orderid);


	/**
	 * 当前商品在购物车中的记录
	 * @param goodsid
	 * @param productid
	 * @param memberid
	 * @param cartstatus
	 * @param cartactiontag
	 * @param promotioncometag
     * @param storeid
     * @return
     */
	MemberCartT getCurrentMemberCart(String goodsid,String productid,String memberid,String cartstatus,String cartactiontag,String promotioncometag,String storeid);
	
}
